package cn.lili.modules.payment.entity.dos;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

/**
 * 会员积分提现记录表
 * @TableName li_user_points_withdraw
 */
@TableName(value ="li_user_points_withdraw")
@Data
public class LiUserPointsWithdraw implements Serializable {
    /**
     * ID
     */
    @TableId(type = IdType.ASSIGN_ID)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;

    /**
     * 创建者
     */
    private String createBy;

    /**
     * 创建时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;


    /**
     * 备注
     */
    private String remark;

    /**
     * 会员ID
     */
    @JsonSerialize(using = ToStringSerializer.class)
    private Long memberId;

    /**
     * 会员名称
     */
    private String memberName;
    /**
     * 提现前积分
     */
    private String  beforePoint;
    /**
     * 提现后积分
     */
    private String afterPoint;
    /**
     * 提现积分
     */
    private String money;

    @ApiModelProperty(value = "提现类型：1绿色积分，2分销员分润积分")
    private Integer withdrawType;

    /**
     * 0: 未审核
     * 1：通过
     * 2：未通过
     */
    @ApiModelProperty(value = "审核状态")
    private Integer auditStatus;

    @ApiModelProperty(value = "审核时间")
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date auditTime;

    @ApiModelProperty(value = "审核人")
    private String auditBy;

    @ApiModelProperty(value = "审核人昵称")
    private String auditUserName;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}